#pragma once
#include <Catentacle.h>

class Sandbox2D : public Catentacle::Layer
{
public:
	Sandbox2D();
	virtual ~Sandbox2D() = default;

	virtual void OnAttach() override;
	virtual void OnDetach() override;

	virtual void OnUpdate(Catentacle::TimeStep ts) override;
	virtual void OnImGuiRender() override;
	virtual void OnEvent(Catentacle::Event& e) override;
private:
	Catentacle::OrthoCameraController m_CameraController;

	Catentacle::Ref<Catentacle::VertexArray> m_SquareVA;
	Catentacle::Ref<Catentacle::Shader> m_FlatColorShader;

	Catentacle::Ref<Catentacle::Texture2D> m_CheckerboardTexture;
	Catentacle::Ref<Catentacle::Texture2D> m_SpriteSheet;
	Catentacle::Ref<Catentacle::SubTexture2D> m_TextureStairs, m_TextureTree;

	glm::vec4 m_SquareColor;
};

